#打字游戏
import pygame
from gameSprit import *
class LetteGamg :
    def __init__(self):
        pygame.init()
        # 1.初始化游戏窗口
        self.screen = pygame.display.set_mode(SCREEN_INFO.size)
        # 2.设置时钟
        self.clock = pygame.time.Clock()
        # 3.创建精灵，精灵组
        self.__create_sprites()
        #定时器每秒出现一个字母
        pygame.time.set_timer(LETTER_EVEN, 1000)
        self.game_start()
        LetteGamg.game_over()

    def game_start(self):
        print('游戏开始')
        while True :
            # 1.设置帧率
            self.clock.tick(FRAME_PRE_SEC)
            self.clock.tick()
            # 2.监听事件
            self.__even_hander()
            # 3碰撞测试.
            self.__check_collied()
            # 4.更新/绘制精灵组
            self.__update_sprites()
            # 5.跟新显示
            pygame.display.update()

    def __create_sprites(self) :
        bj1 = Backgroud()
        bj2 = Backgroud(True)
        self.bj_group = pygame.sprite.Group(bj1,bj2)
        self.enemy_group = pygame.sprite.Group()
    # 监听事件
    def __even_hander(self):
        for event in pygame.event.get() :
            #print(even)
            if event.type == pygame.QUIT :
                self.game_over()
            if event.type == LETTER_EVEN :
                self.enemy = Enemy()
                self.enemy_group.add(self.enemy)
            if event.type == pygame.KEYDOWN:
                for sprite in self.enemy_group :
                    if pygame.key.name(event.key) == sprite.name :
                        sprite.kill()



     # 碰撞测试
    def __check_collied(self):
        pass

    # 更新/绘制精灵组
    def __update_sprites(self):
        self.bj_group.update()
        self.bj_group.draw(self.screen)
        self.enemy_group.update()
        self.enemy_group.draw(self.screen)



    @staticmethod
    def game_over():
        print('游戏结束')
        pygame.quit()
        exit()




if __name__ =="__main__" :
    LetteGamg()